<?php

namespace common\models;

use Yii;

/**
 * This is the model class for table "tb_warehouse".
 *
 * @property string $id 自增ID
 * @property string $company_name 公司名称
 * @property string $warehouse_name 仓库名称
 * @property string $remark 备注
 * @property double $sort 排序字段
 * @property int $is_display 是否显示 1-显示 2-不显示
 * @property string $created_at 创建时间
 * @property string $updated_at 更新时间
 */
class Warehouse extends \yii\db\ActiveRecord
{
    /**
     * {@inheritdoc}
     */
    public static function tableName()
    {
        return 'tb_warehouse';
    }

    /**
     * {@inheritdoc}
     */
    public function rules()
    {
        return [
            [['company_id','warehouse_name'], 'required'],
            [['company_id'], 'validateName'],
            [['warehouse_name'], 'unique','message' =>'仓库名称不能重复'],
            [['sort'], 'number'],
            [['is_display', 'created_at', 'updated_at'], 'integer'],
            [['company_id', 'warehouse_name', 'remark'], 'string', 'max' => 255],
        ];
    }
    
    public function validateName($attribute, $params)
    {
      if (!$this->hasErrors()) {
            if($this->company_id == 0){
                $this->addError($attribute, '请选择公司名称');
           
            }
      }
            
        
    }
    /**
     *  关联Company表
     */
    public function getCompany()
    {
        // hasOne要求返回两个参数 第一个参数是关联表的类名 第二个参数是两张表的关联关系
        return $this->hasOne(Company::className(), ['id' => 'company_id']);
    }

    /**
     * {@inheritdoc}
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'warehouse_name' => '仓库名称',
            'company_id' => '公司',
            'remark' => '备注',
            'sort' => '排序',
            'is_display' => '是否显示',
            'created_at' => '创建时间',
            'updated_at' => '修改时间',
        ];
    }
}
